package com.panda.common.dao.redis;

import java.util.List;
import java.util.Set;

import redis.clients.johm.JOhm;

public class RedisBaseDao<T> extends RedisFactory{
	
	/**
	 * 保存对象
	 * @param o
	 * @return
	 */
	public T save(T o){
		return JOhm.save(o, true);
	}
	
	/**
	 * 删除对象
	 * @param clazz
	 * @param id
	 */
	public void delete(Class<?> clazz,long id){
		JOhm.delete(clazz, id);
	}
	
	/**
	 * 查询所有对象
	 * @param clazz
	 * @return
	 */
	public Set<T> findAll(Class<?> clazz){
		return JOhm.getAll(clazz);
	}
	
	/**
	 * 获得某个ID的对象
	 * @param clazz
	 * @param id
	 * @return
	 */
	public T findById(Class<?> clazz,long id ){
		return JOhm.get(clazz, id);
	}
	
	/**
	 * 根据某个条件查询对象
	 * @param clazz
	 * @param attributeName
	 * @param attributeValue
	 * @return
	 */
	public List<T> find(Class<?> clazz,String attributeName,Object attributeValue){
		return JOhm.find(clazz, attributeName, attributeValue);
	}

}
